*** Settings ***
Library           SeleniumLibrary
Library           String
Resource          ../常用变量.txt
Resource          ../基本配置.txt
Resource          ../浏览器变量.txt
Resource          采购品目.txt
Resource          采购目录.txt

*** Test Cases ***
添加采购品目-成功
    [Setup]    login
    Comment    打开页面    ${pe_add_item_url}
    add_pe
    goto    ${pe_add_item_url}
    采购目录
    Capture Page Screenshot
    采购目录-确认
    ${pe_item_name}    Generate Random String    10
    采购品目名称    ${pe_item_name}
    ${pe_item_code}    evaluate    "".join(random.sample("0123456789",6))    random,string
    采购品目编码    ${pe_item_code}
    采购品目标准价    6
    采购品目参考价-高    10
    采购品目参考价-低    5
    采购品目排序    1
    ${remark}    Generate Random String    10
    采购品目备注    ${remark}
    Capture Page Screenshot
    采购目录保存
    断言品目名称    ${pe_item_name}
    [Teardown]    close

采购品目修改
    [Documentation]    采购品目修改
    ...    1、此处默认只修改第一个
    ...    ***********************************
    ...    修改操作步骤
    ...    1. 添加采购目录：已封装
    ...    2. 添加采购品目：已封装
    ...    3. 修改第采购品目list列表中第一个采购品目
    ...    4. 修改完成进入之前进入的修改页面
    ...    5. 使用should match 方法断言是否修改成功
    ...    --------------------------------------------------
    ...    说明：
    ...    此处有坑：
    ...    1. 使用page should contain 断言当前页面是否包含某品目名称，如果修改之后的品目不出现在第一页，则会断言失败
    ...    2. 仍使用page should contain断言修改页面是否存在某品目名称，显示的是空，目前未解决出现此问题的原因---2020-06-02
    ...    3. 使用element should contain出现和2同样的问题---2020-06-02
    [Setup]    login
    add_pe_item
    log    添加采购目录和采购品目完成
    log    打开list页面
    goto    ${pe_item_list_url}
    log    获取list页面的id信息，进而得到修改页面的url拼接
    sleep    5
    ${pe_item_url}    获取采购品目修改页面
    log    ${pe_item_url}
    打开页面    ${pe_item_url}
    goto    ${pe_item_url}
    capture page screenshot
    采购品目修改页面中-修改采购目录
    采购目录-确认
    ${pe_item_name}    generate random string    8
    采购品目名称    ${pe_item_name}
    ${pe_item_code}    evaluate    "".join(random.sample("0123456789",6))    random,string
    采购品目编码    ${pe_item_code}
    采购品目标准价    5
    采购品目参考价-高    11
    采购品目参考价-低    4
    采购品目排序    1
    ${remark}    generate random string    10
    采购品目备注    ${remark}
    capture page screenshot
    采购目录保存
    Comment    断言品目名称    ${pe_item_name}
    #修改品目可能出现在第二页，修改断言方法
    打开页面    ${pe_item_url}
    goto    ${pe_item_url}
    sleep    5
    Comment    ${test_rcm_log_red_url}    Get Location
    Comment    log    ${test_rcm_log_red_url}
    Comment    Page should contain    ${pe_item_name}
    Comment    Element Text Should Be    id=name    ${pe_item_name}
    #断言封装
    Comment    ${pe_check_name}    get value    //input[@id='name']
    ${pe_check_name}    采购品目-修改页面采购品目名称检查
    log    ${pe_check_name}
    should match    ${pe_check_name}    ${pe_item_name}
    [Teardown]    close
